#ifndef _CANIMATION_H_
#define _CANIMATION_H_

#include <vector>
#include <string>
#include "CFrame.h"
using std::string;

class CAnimation
{
private:
	int						imageID;
	float					scale;
	bool					isRunning;
	bool					isLooping;
	int						currentFrame;
	float					animationSpeed;
	std::vector<CFrame*>	frames;
	float					frameTime;
	
public:
	CAnimation(void);
	~CAnimation(void);

	void SetImageID(int id) {imageID = id;}
	void SetScale(float s) {scale = s;}
	void SetIsRunning(bool running) {isRunning = running;}
	void SetIsLooping(bool looping) {isLooping = looping;}
	void SetCurrentFrame(int frame);
	void SetAnimationSpeed(float speed) {animationSpeed = speed;}
	void SetFrameTime(float time) {frameTime = time;}
	

	
	int GetImageID() {return imageID;}
	float GetScale() {return scale;}
	bool GetIsLooping() {return isLooping;}
	int GetCurrentFrame() {return currentFrame;}
	float GetAnimationSpeed() {return animationSpeed;}
	float GetFrameTime() {return frameTime;}
	std::vector<CFrame*>* GetFrames() {return &frames;}

	void PushFrame(CFrame* frame);

};

#endif